/*
 * trace_CmdStackInfo.h
 *
 *  Created on: 2012/07/04
 *      Author: guanxiaoying
 */

#ifndef TRACE_CMDSTACKINFO_H_
#define TRACE_CMDSTACKINFO_H_

/*
 * the stack of commands( LinkCommandList ).
 * Used when making PATH-INFO, and LOOP-INFO.
 * See Tr_PathCollectPathTree
*/
typedef struct {
	BOOL (*clear)( VOID );
	BOOL (*alloc)( AST );
	AST  (*getMax)( VOID );
	/* property below: times be traced */
	ACCESS_U2_FIELD times;
	/* property below: the result of the latest branch, this information will be used when create
	 * a PATH-INFO which has pathOut_next */
	ACCESS_U2_FIELD pathFlag;
	/* property below: the current command */
	ACCESS_IDX_FIELD currObject;
	/* property below: the next command */
	ACCESS_IDX_FIELD nextObject;
	/* property below: the current function */
	ACCESS_IDX_FIELD traceFunction;
}CMDSTACKINFO_ACCESS;
extern const CMDSTACKINFO_ACCESS stCmdStackAccess;

#endif /* TRACE_CMDSTACKINFO_H_ */
